const arr = [1, 2, 3, 4, 3, 2, 4, 3, 2, 1, 3, 5, 6, 7]
//! 选择排序
let temp 
// for(let i = 0; i < arr.length - 1; i++) {
//     let maxNum = i // 用maxNum 从大到小排列
//     for(let j = i + 1; j < arr.length; j++) {
//         if(arr[maxNum] < arr[j]) { // 这个 < 
//             temp = arr[j]
//             arr[j] = arr[maxNum]
//             arr[maxNum] = temp
//         }
//     }
// }
//? 用外层的数 与 后面每一个进行比较 大于就后面的数就进行交换 最终实现 数组第一个元素是最小的, 后续重复
//? 也就是假设第一个元素时最小的, 后续有比他小的就进行交换
for(let i = 0; i < arr.length - 1; i++) {
    let minNum = i // 用minNum 从小到大排列
    for(let j = i + 1; j < arr.length; j++) {
        if(arr[minNum] > arr[j]) { // 这个 >
            temp = arr[j]
            arr[j] = arr[minNum]
            arr[minNum] = temp
        }
    }
}
// 从大到小
console.log(arr)
// 时间复杂度 O(n^2)